package com.none.staff.contract;


import com.none.staff.model.ConfigBean;
import com.peter.electronicmall.base.IBaseView;
import com.peter.electronicmall.base.IPresenter;

public interface ISplashContract {

    interface ISplashView extends IBaseView {
        /**
         * get config file content success
         */
        void getConfigSuccess();

        /**
         * get config file fail
         * @param title
         * @param msg
         */
        void getConfigFailed(String title,String msg);

        /**
         * show progress
         *
         * @param progress
         */
        void downloadUpgrade(int progress);

        /**
         * show loading animation
         */
        void loading();

        /**
         *
         */
//        void showProgress(int progress);

        /**
         * cancel loading animation
         */
        void unLoading();

        /**
         * show is upgrade dialog
         */
        void showIsUpgradeDialog();

        /**
         * show guide page
         */
        void showGuidePage();
        /**
         *
         */
        void intoHomePage();
    }


    interface ISplashPresenter extends IPresenter<ISplashView> {

       boolean isGoInGuide();

        void getConfig(String url);

        boolean checkNativeIsNeedUpgrade();

        void downloadUpgradeAPKFile();

        void nativeUpgrade();

        boolean checkClientIsNeedUpgrade();

        void downloadClientResource();

        void verifyPackageLegality();

        void unZipFile();

        void saveFile();
    }
}
